<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of admisiones
 *
 * @author EArzuza
 */
class admisiones extends ModuleModel {

    /**
     *
     * @var Query
     */
    private $query;

    function __construct() {
        parent::__construct();
        $this->query = ModulesContext::instance()->getQueryFactory()->getQuery();
    }

    function GetPreguntas() {
        $result = $this->query->select()
                ->from(array("acaweb_entrevista"))
                ->get();

        return $result->resultList();
    }

    function GetAll() {
        $query = ModulesContext::instance()->getQueryFactory()->getQuery();
        $result = $query->select()
                ->from(array("acaweb_inscritos"))
                ->get();
                
        return $result->resultList();
    }
    
    function getCedulas() {
        
        $query = ModulesContext::instance()->getQueryFactory()->getQuery();
        $result = $query->select(array("DocumentoIdentidad"))
                ->from(array("acaweb_Inscritos"))
                ->get();

        return $result->resultList();
        
    }

    function GetDatosGenerales($id) {
        $query = ModulesContext::instance()->getQueryFactory()->getQuery();
        $result = $query->select()
                ->from(array("acaweb_Inscritos"))
                ->where('DocumentoIdentidad', $id)
                ->get();

        return $result->resultList();
    }

    function GetDatosFamiliares($id) {
        $query = ModulesContext::instance()->getQueryFactory()->getQuery();
        $result = $query->select()
                ->from(array("acaweb_inscritos_informacion_familiar"))
                ->where('DocumentoIdentidad', $id)
                ->get();

        return $result->resultList();
    }

    function GetDatosEstudios($id) {
        $query = ModulesContext::instance()->getQueryFactory()->getQuery();
        $result = $query->select()
                ->from(array("acaweb_inscritos_historial_estudios"))
                ->where('DocumentoIdentidad', $id)
                ->get();

        return $result->resultList();
    }

    function GetDatosLaborales($id) {
        $query = ModulesContext::instance()->getQueryFactory()->getQuery();
        $result = $query->select()
                ->from(array("acaweb_inscritos_informacion_laboral"))
                ->where('DocumentoIdentidad', $id)
                ->get();

        return $result->resultList();
    }

    function GetDatosInteres($id) {
        $query = ModulesContext::instance()->getQueryFactory()->getQuery();
        $result = $query->select()
                ->from(array("acaweb_inscritos_informacion_interes"))
                ->where('DocumentoIdentidad', $id)
                ->get();

        return $result->resultList();
    }

    function GetById($id) {
        $query = ModulesContext::instance()->getQueryFactory()->getQuery();
        $result = $query->select()
                ->from(array("acaweb_Inscritos"))
                ->where('DocumentoIdentidad', $id)
                ->get();

        return $result->resultList();
    }

    function Terminado($id) {
        $query = ModulesContext::instance()->getQueryFactory()->getQuery();
        $result = $query->select()
                ->from(array("acaweb_Inscritos"))
                ->where('DocumentoIdentidad', $id)
                ->where('terminado', '1')
                ->get();

        $result = $result->resultList();

        if (!empty($result)) {
            return true;
        }

        return false;
    }

    function Update($inscrito) {
        $this->query->update("acaweb_inscritos")
                ->where("DocumentoIdentidad", $inscrito["DocumentoIdentidad"])
                ->set("PlanEstudio", $inscrito["PlanEstudio"])
                ->set("tipoInscripcion", $inscrito["tipoInscripcion"])
                ->set("Nombre", $inscrito["Nombre"])
                ->set("Apellido", $inscrito["Apellido"])
                ->set("TipoDocumento", $inscrito["TipoDocumento"])
                ->set("Sexo", $inscrito["Sexo"])
                ->set("FechaNacimiento", $inscrito["FechaNacimiento"])
                ->set("PaisNacimiento", $inscrito["PaisNacimiento"])
                ->set("DepartamentoNacimiento", $inscrito["DepartamentoNacimiento"])
                ->set("MunicipioNacimiento", $inscrito["MunicipioNacimiento"])
                ->set("Estrato", $inscrito["Estrato"])
                ->set("GrupoSangineo", $inscrito["GrupoSangineo"])
                ->set("RH", $inscrito["RH"])
                ->set("PaisResidencia", $inscrito["PaisResidencia"])
                ->set("DepartamentoResidencia", $inscrito["DepartamentoResidencia"])
                ->set("MunicipioResidencia", $inscrito["MunicipioResidencia"])
                ->set("Barrio", $inscrito["Barrio"])
                ->set("Direccion", $inscrito["Direccion"])
                ->set("TelefonoFijo", $inscrito["TelefonoFijo"])
                ->set("TelefonoMovil", $inscrito["TelefonoMovil"])
                ->set("Email", $inscrito["Email"])
                ->set("EstadoCivil", $inscrito["EstadoCivil"])
                ->set("graduado", $inscrito["graduado"])
                
                ->set("vivienda_propia", $inscrito["vivienda_propia"])
                ->set("deuda_vivienda", $inscrito["deuda_vivienda"])
                ->set("sisben", $inscrito["sisben"])
                ->set("grupo_etnico", $inscrito["grupo_etnico"])
                ->set("is_discapacitado", $inscrito["is_discapacitado"])
                ->set("discapacidad", $inscrito["discapacidad"])
                ->set("is_formacion_especial", $inscrito["is_formacion_especial"])
                ->set("is_grupo_vulnerable", $inscrito["is_grupo_vulnerable"])
                ->set("ingresos_familiares", $inscrito["ingresos_familiares"])
                ->set("numero_aportantes", $inscrito["numero_aportantes"])
                ->set("numero_hermanos", $inscrito["numero_hermanos"])
                ->set("posicion_hermanos", $inscrito["posicion_hermanos"])
                ->set("hermanos_estudios_superiores", $inscrito["hermanos_estudios_superiores"])
                ->set("grupo_familiar", $inscrito["grupo_familiar"])
                ->set("personas_a_cargo", $inscrito["personas_a_cargo"])
                ->set("is_validacion", $inscrito["is_validacion"])
                ->set("valor_pension", $inscrito["valor_pension"])
                
                ->set("fechaPresentacionICFES", $inscrito["fechaPresentacionICFES"])
                ->set("numeroRegistroICFES", $inscrito["numeroRegistroICFES"])
                ->set("codigoPlantelICFES", $inscrito["codigoPlantelICFES"])
                ->set("nombreColegio", $inscrito["nombreColegio"])
                ->set("tituloRecibido", $inscrito["tituloRecibido"])
                ->set("paisColegio", $inscrito["paisColegio"])
                ->set("departamentoColegio", $inscrito["departamentoColegio"])
                ->set("municipioColegio", $inscrito["municipioColegio"])
                ->set("fechaGradoColegio", $inscrito["fechaGradoColegio"])
                ->set("folioColegio", $inscrito["folioColegio"])
                ->set("libroColegio", $inscrito["libroColegio"])
                ->set("nombreUniversidadTransf", $inscrito["nombreUniversidadTransf"])
                ->set("semestresCursadosTransf", $inscrito["semestresCursadosTransf"])
                ->set("razonTransferenciaTransf", $inscrito["razonTransferenciaTransf"])
                ->set("estado", EstadoAdmision::Inscrito)
                ->set("fecha_inscripcion", date("Y-m-d"))
                ->set("terminado", $inscrito["terminado"])
                ->toUppercase()
                ->commit();

        foreach ($inscrito["familiares"] as $historial_familiar) {
            if ($historial_familiar["parentesco"] != 6) {
                $this->query->update("acaweb_inscritos_informacion_familiar")
                        ->where("id", $historial_familiar["id"])
                        ->set("nombre", $historial_familiar["nombre"])
                        ->set("parentesco", $historial_familiar["parentesco"])
                        ->set("direccion", $historial_familiar["direccion"])
                        ->set("telefonoFijo", $historial_familiar["telefonoFijo"])
                        ->set("telefonoMovil", $historial_familiar["telefonoMovil"])
                        ->set("email", $historial_familiar["email"])
                    
                        ->set("nivelEducativo", $historial_familiar["nivelEducativo"])
                                        
                        ->set("ocupacion", $historial_familiar["ocupacion"])
                        ->set("empresa", $historial_familiar["empresa"])
                        ->toUppercase()
                        ->commit();
            } else {
                $this->query->update("acaweb_inscritos_informacion_familiar")
                        ->where("id", $historial_familiar["id"])
                        ->set("nombre", $historial_familiar["nombre"])
                        ->set("parentesco", $historial_familiar["parentesco"])
                        ->set("direccion", $historial_familiar["direccion"])
                        ->set("telefonoFijo", $historial_familiar["telefonoFijo"])
                        ->set("telefonoMovil", $historial_familiar["telefonoMovil"])
                        ->set("email", $historial_familiar["email"])
                    
                        ->set("nivelEducativo", $historial_familiar["nivelEducativo"])
                                        
                        ->set("ocupacion", $historial_familiar["ocupacion"])
                        ->set("empresa", $historial_familiar["empresa"])
                        ->set("otroParentesco", $historial_familiar["otroParentesco"])
                        ->toUppercase()
                        ->commit();
            }
        }

        if (!empty($inscrito["UniversidadesSolicitadas"])) {
            foreach ($inscrito["UniversidadesSolicitadas"] as $historial_estudios) {

                $this->query->insertInto("acaweb_inscritos_historial_estudios")
                        ->set("DocumentoIdentidad", $inscrito["DocumentoIdentidad"])
                        ->set("anio_historial_estudios", $historial_estudios["anio_historial_estudios"])
                        
                        ->set("sector_historial_estudios", $historial_estudios["sector_historial_estudios"])
                        
                        ->set("institucion_historial_estudios", $historial_estudios["institucion_historial_estudios"])
                        ->set("programa_historial_estudios", $historial_estudios["programa_historial_estudios"])
                        ->toUppercase()
                        ->commit();
            }
        }


        if (!empty($inscrito["Informacion_Laboral"])) {

            foreach ($inscrito["Informacion_Laboral"] as $informacion_laboral) {

                $this->query->insertInto("acaweb_inscritos_informacion_laboral")
                        ->set("DocumentoIdentidad", $inscrito["DocumentoIdentidad"])
                        ->set("nombre_empresa_informacion_laboral", $informacion_laboral["nombre_empresa_informacion_laboral"])
                        ->set("cargo_informacion_laboral", $informacion_laboral["cargo_informacion_laboral"])
                        
                        ->set("tipo_empresa_informacion_laboral", $informacion_laboral["tipo_empresa_informacion_laboral"])
                        
                        ->set("fecha_inicio_informacion_laboral", $informacion_laboral["fecha_inicio_informacion_laboral"])
                        ->set("fecha_fin_informacion_laboral", $informacion_laboral["fecha_fin_informacion_laboral"])
                        ->set("direccion_informacion_laboral", $informacion_laboral["direccion_informacion_laboral"])
                        ->toUppercase()
                        ->commit();
            }
        }


        $this->query->update("acaweb_inscritos_informacion_interes")
                ->where("DocumentoIdentidad", $inscrito["DocumentoIdentidad"])
                ->set("ubicacion_informacion_interes", $inscrito["complementarios"]["ubicacion_informacion_interes"])
                ->set("circulo_social_informacion_interes", $inscrito["complementarios"]["circulo_social_informacion_interes"])
                ->set("calidad_academica_informacion_interes", $inscrito["complementarios"]["calidad_academica_informacion_interes"])
                ->set("descuentos_becas_informacion_interes", $inscrito["complementarios"]["descuentos_becas_informacion_interes"])
                ->set("formacion_valores_informacion_interes", $inscrito["complementarios"]["formacion_valores_informacion_interes"])
                ->set("costo_matricula_informacion_interes", $inscrito["complementarios"]["costo_matricula_informacion_interes"])
                ->set("instalaciones_informacion_interes", $inscrito["complementarios"]["instalaciones_informacion_interes"])
                ->set("renombre_trayectoria_informacion_interes", $inscrito["complementarios"]["renombre_trayectoria_informacion_interes"])
                ->set("referencias_informacion_interes", $inscrito["complementarios"]["referencias_informacion_interes"])
                ->set("vallas_informacion_interes", $inscrito["complementarios"]["vallas_informacion_interes"])
                ->set("periodicos_informacion_interes", $inscrito["complementarios"]["periodicos_informacion_interes"])
                ->set("redes_sociales_informacion_interes", $inscrito["complementarios"]["redes_sociales_informacion_interes"])
                ->set("revistas_interes", $inscrito["complementarios"]["revistas_interes"])
                ->set("videos_informacion_interes", $inscrito["complementarios"]["videos_informacion_interes"])
                ->set("centros_comerciales_informacion_interes", $inscrito["complementarios"]["centros_comerciales_informacion_interes"])
                ->set("television_informacion_interes", $inscrito["complementarios"]["television_informacion_interes"])
                ->set("ferias_universitarias_informacion_interes", $inscrito["complementarios"]["ferias_universitarias_informacion_interes"])
                ->set("visita_colegio_informacion_interes", $inscrito["complementarios"]["visita_colegio_informacion_interes"])
                ->set("visita_de_universidad_informacion_interes", $inscrito["complementarios"]["visita_de_universidad_informacion_interes"])
                ->set("radio_informacion_interes", $inscrito["complementarios"]["radio_informacion_interes"])
                ->set("pagina_web_informacion_interes", $inscrito["complementarios"]["pagina_web_informacion_interes"])
                ->set("otros_medios", $inscrito["complementarios"]["otros_medios"])
                ->set("recibir_informacion", $inscrito["recibir_informacion"])
                ->toUppercase()
                ->commit();
    }
    
    function Create($inscrito) {

        $this->query->insertInto("acaweb_inscritos")
                ->set("PlanEstudio", $inscrito["PlanEstudio"])
                ->set("tipoInscripcion", $inscrito["tipoInscripcion"])
                ->set("Nombre", $inscrito["Nombre"])
                ->set("Apellido", $inscrito["Apellido"])
                ->set("TipoDocumento", $inscrito["TipoDocumento"])
                ->set("DocumentoIdentidad", $inscrito["DocumentoIdentidad"])
                ->set("Sexo", $inscrito["Sexo"])
                ->set("FechaNacimiento", $inscrito["FechaNacimiento"])
                ->set("PaisNacimiento", $inscrito["PaisNacimiento"])
                ->set("DepartamentoNacimiento", $inscrito["DepartamentoNacimiento"])
                ->set("MunicipioNacimiento", $inscrito["MunicipioNacimiento"])
                ->set("Estrato", $inscrito["Estrato"])
                ->set("GrupoSangineo", $inscrito["GrupoSangineo"])
                ->set("RH", $inscrito["RH"])
                ->set("PaisResidencia", $inscrito["PaisResidencia"])
                ->set("DepartamentoResidencia", $inscrito["DepartamentoResidencia"])
                ->set("MunicipioResidencia", $inscrito["MunicipioResidencia"])
                ->set("Barrio", $inscrito["Barrio"])
                ->set("Direccion", $inscrito["Direccion"])
                ->set("TelefonoFijo", $inscrito["TelefonoFijo"])
                ->set("TelefonoMovil", $inscrito["TelefonoMovil"])
                ->set("Email", $inscrito["Email"])
                ->set("graduado", $inscrito["graduado"])
                ->set("EstadoCivil", $inscrito["EstadoCivil"])
                
                ->set("vivienda_propia", $inscrito["vivienda_propia"])
                ->set("deuda_vivienda", $inscrito["deuda_vivienda"])
                ->set("sisben", $inscrito["sisben"])
                ->set("grupo_etnico", $inscrito["grupo_etnico"])
                ->set("is_discapacitado", $inscrito["is_discapacitado"])
                ->set("discapacidad", $inscrito["discapacidad"])
                ->set("is_formacion_especial", $inscrito["is_formacion_especial"])
                ->set("is_grupo_vulnerable", $inscrito["is_grupo_vulnerable"])
                ->set("ingresos_familiares", $inscrito["ingresos_familiares"])
                ->set("numero_aportantes", $inscrito["numero_aportantes"])
                ->set("numero_hermanos", $inscrito["numero_hermanos"])
                ->set("posicion_hermanos", $inscrito["posicion_hermanos"])
                ->set("hermanos_estudios_superiores", $inscrito["hermanos_estudios_superiores"])
                ->set("grupo_familiar", $inscrito["grupo_familiar"])
                ->set("personas_a_cargo", $inscrito["personas_a_cargo"])
                ->set("is_validacion", $inscrito["is_validacion"])
                ->set("valor_pension", $inscrito["valor_pension"])
                
                ->set("fechaPresentacionICFES", $inscrito["fechaPresentacionICFES"])
                ->set("numeroRegistroICFES", $inscrito["numeroRegistroICFES"])
                ->set("codigoPlantelICFES", $inscrito["codigoPlantelICFES"])
                ->set("nombreColegio", $inscrito["nombreColegio"])
                ->set("tituloRecibido", $inscrito["tituloRecibido"])
                ->set("paisColegio", $inscrito["paisColegio"])
                ->set("departamentoColegio", $inscrito["departamentoColegio"])
                ->set("municipioColegio", $inscrito["municipioColegio"])
                ->set("fechaGradoColegio", $inscrito["fechaGradoColegio"])
                ->set("folioColegio", $inscrito["folioColegio"])
                ->set("libroColegio", $inscrito["libroColegio"])
                ->set("nombreUniversidadTransf", $inscrito["nombreUniversidadTransf"])
                ->set("semestresCursadosTransf", $inscrito["semestresCursadosTransf"])
                ->set("razonTransferenciaTransf", $inscrito["razonTransferenciaTransf"])
                ->set("anioTrans", $inscrito["anioTrans"])
                ->set("estado", EstadoAdmision::Inscrito)
                ->set("fecha_inscripcion", date("Y-m-d"))
                ->set("terminado", $inscrito["terminado"])
                ->toUppercase()
                ->commit();

        foreach ($inscrito["familiares"] as $historial_familiar) {

            $this->query->insertInto("acaweb_inscritos_informacion_familiar")
                    ->set("DocumentoIdentidad", $inscrito["DocumentoIdentidad"])
                    ->set("nombre", $historial_familiar["nombre"])
                    ->set("parentesco", $historial_familiar["parentesco"])
                    ->set("direccion", $historial_familiar["direccion"])
                    ->set("telefonoFijo", $historial_familiar["telefonoFijo"])
                    ->set("telefonoMovil", $historial_familiar["telefonoMovil"])
                    ->set("email", $historial_familiar["email"])
                    
                    ->set("nivelEducativo", $historial_familiar["nivelEducativo"])
                    
                    ->set("ocupacion", $historial_familiar["ocupacion"])
                    ->set("empresa", $historial_familiar["empresa"])
                    ->set("otroParentesco", $historial_familiar["parentescoOtro"])
                    ->toUppercase()
                    ->commit();
        }

        if (!empty($inscrito["UniversidadesSolicitadas"])) {
            foreach ($inscrito["UniversidadesSolicitadas"] as $historial_estudios) {

                $this->query->insertInto("acaweb_inscritos_historial_estudios")
                        ->set("DocumentoIdentidad", $inscrito["DocumentoIdentidad"])
                        ->set("anio_historial_estudios", $historial_estudios["anio_historial_estudios"])
                        
                        ->set("sector_historial_estudios", $historial_estudios["sector_historial_estudios"])
                        
                        ->set("institucion_historial_estudios", $historial_estudios["institucion_historial_estudios"])
                        ->set("programa_historial_estudios", $historial_estudios["programa_historial_estudios"])
                        ->toUppercase()
                        ->commit();
            }
        }


        if (!empty($inscrito["Informacion_Laboral"])) {

            foreach ($inscrito["Informacion_Laboral"] as $informacion_laboral) {

                $this->query->insertInto("acaweb_inscritos_informacion_laboral")
                        ->set("DocumentoIdentidad", $inscrito["DocumentoIdentidad"])
                        ->set("nombre_empresa_informacion_laboral", $informacion_laboral["nombre_empresa_informacion_laboral"])
                        ->set("cargo_informacion_laboral", $informacion_laboral["cargo_informacion_laboral"])
                        
                        ->set("tipo_empresa_informacion_laboral", $informacion_laboral["tipo_empresa_informacion_laboral"])
                        
                        ->set("fecha_inicio_informacion_laboral", $informacion_laboral["fecha_inicio_informacion_laboral"])
                        ->set("fecha_fin_informacion_laboral", $informacion_laboral["fecha_fin_informacion_laboral"])
                        ->set("direccion_informacion_laboral", $informacion_laboral["direccion_informacion_laboral"])
                        ->toUppercase()
                        ->commit();
            }
        }

        $this->query->insertInto("acaweb_inscritos_informacion_interes")
                ->set("DocumentoIdentidad", $inscrito["DocumentoIdentidad"])
                ->set("ubicacion_informacion_interes", $inscrito["complementarios"]["ubicacion_informacion_interes"])
                ->set("circulo_social_informacion_interes", $inscrito["complementarios"]["circulo_social_informacion_interes"])
                ->set("calidad_academica_informacion_interes", $inscrito["complementarios"]["calidad_academica_informacion_interes"])
                ->set("descuentos_becas_informacion_interes", $inscrito["complementarios"]["descuentos_becas_informacion_interes"])
                ->set("formacion_valores_informacion_interes", $inscrito["complementarios"]["formacion_valores_informacion_interes"])
                ->set("costo_matricula_informacion_interes", $inscrito["complementarios"]["costo_matricula_informacion_interes"])
                ->set("instalaciones_informacion_interes", $inscrito["complementarios"]["instalaciones_informacion_interes"])
                ->set("renombre_trayectoria_informacion_interes", $inscrito["complementarios"]["renombre_trayectoria_informacion_interes"])
                ->set("referencias_informacion_interes", $inscrito["complementarios"]["referencias_informacion_interes"])
                ->set("vallas_informacion_interes", $inscrito["complementarios"]["vallas_informacion_interes"])
                ->set("periodicos_informacion_interes", $inscrito["complementarios"]["periodicos_informacion_interes"])
                ->set("redes_sociales_informacion_interes", $inscrito["complementarios"]["redes_sociales_informacion_interes"])
                ->set("revistas_interes", $inscrito["complementarios"]["revistas_interes"])
                ->set("videos_informacion_interes", $inscrito["complementarios"]["videos_informacion_interes"])
                ->set("centros_comerciales_informacion_interes", $inscrito["complementarios"]["centros_comerciales_informacion_interes"])
                ->set("television_informacion_interes", $inscrito["complementarios"]["television_informacion_interes"])
                ->set("ferias_universitarias_informacion_interes", $inscrito["complementarios"]["ferias_universitarias_informacion_interes"])
                ->set("visita_colegio_informacion_interes", $inscrito["complementarios"]["visita_colegio_informacion_interes"])
                ->set("visita_de_universidad_informacion_interes", $inscrito["complementarios"]["visita_de_universidad_informacion_interes"])
                ->set("radio_informacion_interes", $inscrito["complementarios"]["radio_informacion_interes"])
                ->set("pagina_web_informacion_interes", $inscrito["complementarios"]["pagina_web_informacion_interes"])
                ->set("otros_medios", $inscrito["complementarios"]["otros_medios"])
                ->set("recibir_informacion", $inscrito["recibir_informacion"])
                ->toUppercase()
                ->commit();
    }

    function EliminarReferenciaLaboral($id) {
        $query = ModulesContext::instance()->getQueryFactory()->getQuery();
        $result = $query->delete("acaweb_inscritos_informacion_laboral")
                ->where('id', $id)
                ->commit();
    }

    function EliminarEstudio($id) {
        $query = ModulesContext::instance()->getQueryFactory()->getQuery();
        $result = $query->delete("acaweb_inscritos_historial_estudios")
                ->where('id', $id)
                ->commit();
    }

    function GetBarrios() {
        return $this->query->select()
                        ->from(array("acaweb_Barrio"))
                        ->get()
                        ->resultList();
    }

}

?>
